package com.yuyou.fn.tms.vo.resource;

import com.yuyou.fn.educational.entity.Student;
import io.swagger.annotations.ApiModelProperty;

import java.util.Date;
import java.util.HashMap;
import java.util.Map;

/**
 * Created by lzh on 2019/4/18.
 */
public class ResourceStudent {
    static Map<Integer,Integer> sexMap=new HashMap<>();
    static {
        sexMap.put(1,0);
        sexMap.put(2,1);
    }

    @ApiModelProperty("数据ID")
    private Long stuId ;//数据ID

    @ApiModelProperty("数据名字")
    private String stuName ;//数据名字

    @ApiModelProperty("学生电话,只要一个")
    private String phone ;//学生电话,只要一个

    @ApiModelProperty("学号")
    private String stuNumber ;//学号

    @ApiModelProperty("memberId")
    private String memberId ;//memberId

    @ApiModelProperty("性别 0 男 1 女")
    private Integer sex ;//性别 0 男 1 女

    @ApiModelProperty("生日")
    private Date birthDay ;//生日

    @ApiModelProperty("0 正常(默认值) 1 已失效（已删除）")
    private Integer state ;//0 正常(默认值) 1 已失效（已删除）

    @ApiModelProperty("所属校区ID（或意愿校区ID）")
    private Long deptId ;//所属校区ID（或意愿校区ID）

    @ApiModelProperty("所在年级")
    private Long graId ;//所在年级

    @ApiModelProperty("就读学校")
    private String fsName ;//就读学校

    @ApiModelProperty("是否报读过(0是1不是)")
    private Integer stuIsNew ;//是否报读过(0是1不是)

    @ApiModelProperty("是否新资源（0-否 1-是）")
    private String stuIsNewResource ;//是否新资源（0-否 1-是）

    @ApiModelProperty("最近报读校区 （选填）")
    private Long lastRegDeptId ;//最近报读校区 （选填）

    @ApiModelProperty("最近报读年级  （选填）")
    private Long lastRegGraId ;//最近报读年级  （选填）

    @ApiModelProperty("创建时间")
    private Date createTime ;//创建时间

    @ApiModelProperty("更新时间")
    private Date modifyTime ;//更新时间

    public ResourceStudent(Student student){
        this.setStuId(student.getStudentId());//数据ID
        this.setStuName(student.getName());//数据名字
        this.setPhone(student.getPhoneNo());//学生电话,只要一个
        this.setStuNumber(student.getStudentNo());//学号
        this.setMemberId(student.getCid());//memberId
        this.setSex(sexMap.get(student.getSex()));//性别 0 男 1 女
        this.setBirthDay(student.getBirthday());//生日
        this.setState(0);//0 正常(默认值) 1 已失效（已删除）
        this.setDeptId(null);//所属校区ID（或意愿校区ID）
        this.setGraId(student.getGradeId());//所在年级
        this.setFsName(student.getSchool());//就读学校
        this.setStuIsNew(student.getLastRegCampusId()==null?1:0);//是否报读过(0是1不是)
        this.setStuIsNewResource(null);//是否新资源（0-否 1-是）
        this.setLastRegDeptId(student.getLastRegCampusId());//最近报读校区 （选填）
        this.setLastRegGraId(null);//最近报读年级  （选填）
        this.setCreateTime(student.getCreateTime());//创建时间
        this.setModifyTime(student.getUpdateTime());//更新时间
    }

    public Long getStuId() {
        return stuId;
    }

    public void setStuId(Long stuId) {
        this.stuId = stuId;
    }

    public String getStuName() {
        return stuName;
    }

    public void setStuName(String stuName) {
        this.stuName = stuName;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getStuNumber() {
        return stuNumber;
    }

    public void setStuNumber(String stuNumber) {
        this.stuNumber = stuNumber;
    }

    public String getMemberId() {
        return memberId;
    }

    public void setMemberId(String memberId) {
        this.memberId = memberId;
    }

    public Integer getSex() {
        return sex;
    }

    public void setSex(Integer sex) {
        this.sex = sex;
    }

    public Date getBirthDay() {
        return birthDay;
    }

    public void setBirthDay(Date birthDay) {
        this.birthDay = birthDay;
    }

    public Integer getState() {
        return state;
    }

    public void setState(Integer state) {
        this.state = state;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public Long getGraId() {
        return graId;
    }

    public void setGraId(Long graId) {
        this.graId = graId;
    }

    public String getFsName() {
        return fsName;
    }

    public void setFsName(String fsName) {
        this.fsName = fsName;
    }

    public Integer getStuIsNew() {
        return stuIsNew;
    }

    public void setStuIsNew(Integer stuIsNew) {
        this.stuIsNew = stuIsNew;
    }

    public String getStuIsNewResource() {
        return stuIsNewResource;
    }

    public void setStuIsNewResource(String stuIsNewResource) {
        this.stuIsNewResource = stuIsNewResource;
    }

    public Long getLastRegDeptId() {
        return lastRegDeptId;
    }

    public void setLastRegDeptId(Long lastRegDeptId) {
        this.lastRegDeptId = lastRegDeptId;
    }

    public Long getLastRegGraId() {
        return lastRegGraId;
    }

    public void setLastRegGraId(Long lastRegGraId) {
        this.lastRegGraId = lastRegGraId;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getModifyTime() {
        return modifyTime;
    }

    public void setModifyTime(Date modifyTime) {
        this.modifyTime = modifyTime;
    }
}
